A variety of mechanisms are available to help users search and find electronic information. For example, many electronic resources employ search engines to help users locate information. Some search engines even include automated question and answer systems (“QA robots”) that are designed to identify keyword strings that can be interpreted as questions. Instead of returning a list of ranked search results, a QA robot returns predetermined answers to known questions.
Much of the prior work in building QA robots has been conducted in academic environments and research labs. One organization involved in developing QA robots is the NIST (National institute of Standards & Technology). The NIST sponsors TREC (Text Retrieval Conference) to promote the QA robot development effort. The NIST TREC efforts have influenced to a large extent much of the QA robot design endeavors.
A basic approach for designing a QA robot is to create and store a set of static responses that can be retrieved by the QA robot in response to well-defined queries. In other words, a QA robot retrieves answers from a database that stores a set of questions with predetermined answers. For example, a QA robot may be asked (e.g., through a keyword string) to find movies James Dean has appeared in. The QA robot consults its database, and, assuming the QA robot has information stored about James Dean movies, it retrieves the answer (e.g., James Dean has appeared in “East of Eden”, “Fixed Bayonet”, “Giant”, and “Rebel Without a Cause”). The answer is then displayed to the user. Note that when a question is submitted to the QA robot, the QA robot may first check to see how closely the question's keywords relate to the actual questions stored in the QA robot's database. If it finds a close match, the QA robot retrieves the answer. In this way, a user can find electronic answers to questions, not just ranked results.
One of the problems with conventional QA robots is that they are only as smart as the information stored in its database. Unfortunately, the information accessible to QA robots is typically static. Hence, if a question is posed that is not in the QA robot's database, the QA robot cannot respond to it.
Another problem with current QA robots is that they are built on the basis of a body of knowledge that is informational in character (e.g., the type of information found in an encyclopedia or dictionary). QA robots cannot answer more subjective questions like “what is the best cheese cake restaurant in New York City?”, “what is the best movie to see?”, and other questions that are subjective in nature.
In addition, QA robots cannot answer questions that are of a localized nature (e.g., the type of information that cannot be found in a book). For example, suppose a person is flying to Boise, Id. and wants to take a shower and freshen up upon his arrival. However, this person does not want to stay check-in and stay overnight in a hotel. This information may be difficult to find by performing standard web searches, but it is the type of question that a resident of Boise may be able to answer. Yet, QA robots do not have this type of localized information, nor do they have the capability to find this type of information out.
Another problem with, QA robots is that to train a QA robot to answer questions effectively takes time and large amounts of training data (e.g., to find out what answers are effective, what answers are more useful, which answers are correct, etc.). Moreover, current training approaches are non-adaptive, meaning once a question has an answer in a QA robot database it is difficult to change (e.g., an answer is presumed correct until it is manually changed).
Finally, perhaps the biggest problem with conventional QA robots is that they are often wrong, and users do not like wrong answers. In fact, users often find it much easier to perform a search query in a search engine to find information rather than using the QA robots. Especially since the way users search for answers in a QA robot is not much different than the way they search with keywords (e.g., questions submitted to QA robots are often not natural language queries). Thus, current QA technology cannot match users' demands.
The approaches described in the section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.